# Make LaTeX chunk for Table 4

# Load Models and Store AUCs
countries <- c('indo', 'colo')
dvs <- c("any", "high", "spike")
models <- c('full', "onlyviolence",
            "violpop", "noviolence" )

auc_array <- array(NA,
                   dim = c(length(countries),
                           length(dvs),
                           length(models)),
                   dimnames = list(countries,
                                   dvs,
                                   models))
algo <- "ebma"

for (country in countries) {
  for (x in models) {
    for (dv in dvs) {
      filename <- paste(modeldir,"/",
                    country,
                    "_ebma_",
                    dv,
                    "_", x, "_cross.RData",
                    sep = "")
      load(filename)
      aucs_by_year = c()
      for (i in 1:length(get(paste(algo,".results",sep="")))) {
          predictions <- as.vector(get(paste(algo,".results",sep=""))[[i]]$fit.oos)
          realizations <- as.vector(get(paste(algo,".results",sep=""))[[i]]$actual.oos)
          aucs_by_year <- c(aucs_by_year,
                            roc(response = realizations,
                                predictor = predictions)[['auc']])
      }
      auc_array[country, dv, x] <- mean(aucs_by_year)
    }
  }
}


# Build Table with Labels
country.labels <- c(indo='Indonesia',
                    colo='Colombia')
outcome.labels <- c(any="Any violent event",
                    high="$\\ge$ 5 violent events",
                    spike="$\\ge$ 1 s.d. increase in events")
model.labels <- c(full='Full\\\\ Predictors',
                  onlyviolence='All Past\\\\ Violence\\\\ Measures',
                  violpop='All Past\\\\ Violence \\\\ \\& \\\\ Population',
                  noviolence='Full Excl.\\\\ Past\\\\ Violence',
                  fullfixed='Time-\\\\ Invariant\\\\ Predictors',
                  fullvarying='Time-\\\\ Varying\\\\ Predictors')

table <- auc_array
dimnames(table)[[1]] <- country.labels[dimnames(table)[[1]]]
dimnames(table)[[2]] <- outcome.labels[dimnames(table)[[2]]]
dimnames(table)[[3]] <- model.labels[dimnames(table)[[3]]]

# Print to Latex
print.texfragment(table = table,
                  filepath = "tables",
                  file = "table_4",
                  head.width = '1.8')

